runcloud 0.1.110 → 0.1.112

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -756,7 +756,7 @@ function registerSimulatorCommands(program, platform) {
756
756
  .addOption(new Option('--dev-host <host>', 'dev-only: target a specific simulator fleet host').hideHelp())
757
757
  .action((opts) => action(async () => {
758
758
  print(await createSimulatorSession(platform, opts), opts);
759
- }));
759
+ }, opts));
760
760
  simulator
761
761
  .command('list')
762
762
  .description(`List active ${label} sessions`)
@@ -765,7 +765,7 @@ function registerSimulatorCommands(program, platform) {
765
765
  .action((opts) => action(async () => {
766
766
  const qs = opts.all ? '?all=1' : '';
767
767
  print(await client().get(`/run-cloud/${platform}${qs}`), opts);
768
- }));
768
+ }, opts));
769
769
  simulator
770
770
  .command('get')
771
771
  .description(`Show ${article} ${label} session`)
@@ -773,7 +773,7 @@ function registerSimulatorCommands(program, platform) {
773
773
  .option('--json', 'output JSON', false)
774
774
  .action((id, opts) => action(async () => {
775
775
  print(await client().get(`/run-cloud/${platform}/${encodeURIComponent(id)}`), opts);
776
- }));
776
+ }, opts));
777
777
  simulator
778
778
  .command('delete')
779
779
  .description(`Release ${article} ${label} session`)
@@ -781,7 +781,7 @@ function registerSimulatorCommands(program, platform) {
781
781
  .option('--json', 'output JSON', false)
782
782
  .action((id, opts) => action(async () => {
783
783
  print(await client().delete(`/run-cloud/${platform}/${encodeURIComponent(id)}`), opts);
784
- }));
784
+ }, opts));
785
785
  simulator
786
786
  .command('open-url')
787
787
  .description(`Open a URL or deep link in ${article} ${label} session`)
@@ -790,7 +790,7 @@ function registerSimulatorCommands(program, platform) {
790
790
  .option('--json', 'output JSON', false)
791
791
  .action((url, opts) => action(async () => {
792
792
  print(await client().post(`/run-cloud/${platform}/${encodeURIComponent(opts.id)}/open-url`, { url }), opts);
793
- }));
793
+ }, opts));
794
794
  addInteractionOptions(simulator
795
795
  .command('tap')
796
796
  .description(`Tap normalized display coordinates in ${article} ${label} session`)
@@ -1012,7 +1012,7 @@ function registerSimulatorCommands(program, platform) {
1012
1012
  for (const entry of parsed.entries)
1013
1013
  writeSimulatorLogEntry(entry, opts.json === true);
1014
1014
  }
1015
- }));
1015
+ }, opts));
1016
1016
  return simulator;
1017
1017
  }
1018
1018
  function jsonErrorEnvelope(error) {
@@ -1,5 +1,9 @@
1
1
  import { mkdir, writeFile } from 'node:fs/promises';
2
2
  import { resolve } from 'node:path';
3
+ export function cloudTraceExplorerUrl(env) {
4
+ const project = env === 'prod' ? 'newly-v3-prod' : 'newly-v3-dev';
5
+ return `https://console.cloud.google.com/traces/explorer?project=${project}`;
6
+ }
3
7
  const STATUS_TEXT = {
4
8
  ok: 'OK',
5
9
  failed: 'FAIL',
@@ -117,6 +121,7 @@ ${report.query.evidenceUntil ? `- Historical evidence cutoff: \`${report.query.e
117
121
  - Deployed commit: ${report.links.githubCommit ? `[\`${report.deploy.git_sha}\`](${report.links.githubCommit})` : 'unknown'}
118
122
  - Venue: \`${report.session.venueRef ?? report.session.venue ?? 'not recorded'}\`
119
123
  - [Correlated Cloud Run logs](${report.links.cloudLogs})
124
+ - [Cloud Trace Explorer](${cloudTraceExplorerUrl(report.env)}) — filter span attribute \`newly.session_id = ${report.session.id}\` (see \`docs/debugging-with-traces.md\`)
120
125
  ${report.links.venueLogsCommand ? `- Retained venue logs: \`${report.links.venueLogsCommand}\`` : ''}
121
126
 
122
127
  ## Failure Diagram
@@ -156,6 +161,7 @@ export function renderSessionDiagnosticTerminal(report) {
156
161
  lines.push(` ${source.url}`);
157
162
  }
158
163
  lines.push('', `Cloud logs: ${report.links.cloudLogs}`);
164
+ lines.push(`Traces: ${cloudTraceExplorerUrl(report.env)} — filter span attribute newly.session_id = ${report.session.id}`);
159
165
  if (report.links.venueLogsCommand) {
160
166
  lines.push(`Venue logs: ${report.links.venueLogsCommand}`);
161
167
  }
package/dist/version.js CHANGED
@@ -1 +1 @@
1
- export const CLI_VERSION = '0.1.110';
1
+ export const CLI_VERSION = '0.1.112';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "runcloud",
3
- "version": "0.1.110",
3
+ "version": "0.1.112",
4
4
  "description": "Create and control run.cloud remote mobile simulators and cloud sandboxes",
5
5
  "license": "Apache-2.0",
6
6
  "keywords": [
Binary file
Binary file