Creating a context should be done using finer-grained in-parallel steps

未关闭
#919 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
22/100
Issue 类型
重构
描述清晰度
基本清楚
活跃度
停滞
技术栈
javascript
领域
api

调研方向

The problem is in the spec steps for create-a-context, which run in parallel from dom-ml-createcontext, and they set context.[[lost]] to a new promise in the realm. Read the HTML spec's event-loop guidance for spec authors, then decide how to split the work: create the MLContext on the event loop, run a finer in-parallel step to start the context timeline, and queue a task to resolve or reject the promise. Done means no realm object is touched from parallel steps, and the spec's promise handling is still correct. Expect spec-process discussion before any change lands.

由索引模型根据 Issue 内容生成。

描述

conventions

create-a-context is called from in-parallel steps defined as part of dom-ml-createcontext.

But creating a context then manipulates realm objects from those parallel steps, for example: "Set context.[[lost]] to a new promise in realm.", which is against the guidance in the HTML spec on event-loop-for-spec-authors.

So I propose creating the MLContext object directly using steps on the event-loop, and then just adding a finer-grained in-parallel step to "start the timeline for the context in an implementation defined manner", and then to queue a task to reject or resolve the promise based on whether that operation was successful.

主要语言
Bikeshed
星标
566
派生
72
PR 合并指标
30 天内没有已合并 PR

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

webmachinelearning/webnn 的其他 Issue

查看 webmachinelearning/webnn 的全部 Issue

相似的 Issue

更多 Backend & API Design Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。