microsoft / microsoft/TypeScript

Editors need a way to determine whether they are talking to an official TS Server

オープン
#40,310 コメント 2 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

Infrastructure
主要言語
Go
スター
111k
フォーク
14.4k
平均マージ
1日 19時間
マージ済み PR(30日)
117

説明

Otherwise, they will obliviously forward events from the server to our official telemetry system and we'll have confusing noise in our data (e.g. stacks that don't match our source or asserts that don't exist).

The most secure approach would be to cryptographically hash the official tsserver.js and have the editor only report telemetry for matching files. This would likely be impractical for, e.g., nightly builds. Edit: @minestarks pointed out that signing the files would be a smarter way to do this - no need for a big inclusion list.

An intermediate approach would be to only report telemetry from the in-box implementation (i.e. not if tsserver comes from npm or nuget). We might lose a lot of data.

Alternatively, our publication process could modify tsserver.js in some way that the editor could detect. A fork would have to be deliberately malicious to replicate the change (vs now, where they'd have to explicitly suppress events to be good citizens).

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

tsserver.js と公開プロセスから始めます。issue では、具体的なテストやその他のエントリーポイントは指定されていません。提案されている識別メカニズムを比較し、nightly または npm/nuget ディストリビューションを含め、テレメトリを転送する前にエディターが公式サーバーを確実に認識できる方法を決定します。公式であることを検証できるサーバーについてのみテレメトリが報告されれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
typescript
領域
developer-experience, observability, security
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。