Skip to content

feat: 支持永久换课、软件清单上报与插件管理服务 - #22

Merged
Edge-HH merged 6 commits into
mainfrom
webui/newui
Sep 28, 2026
Merged

Edge-HH merged 6 commits into
mainfrom
webui/newui

Conversation

@Edge-HH

@Edge-HH Edge-HH commented Sep 28, 2026

Copy link
Copy Markdown
Owner

变更说明

关联变更

  • 功能文档 PR(RemoteCI-Docs):

检查清单

  • 只修改了本任务相关问题,没有夹带无关改动
  • 代码包含必要的注释,命名清晰,采用项目现有主流方案
  • 已运行 dotnet build RemoteCI.slnx -c Release 与 dotnet test RemoteCI.slnx -c Release
  • 手表端改动已运行 ./gradlew :app:assembleDebug :app:testDebugUnitTest
  • 用户可见功能变化已同步到 RemoteCI-Docs 文档仓库
  • 示例与文档中不包含真实密码、令牌、配对码或内部地址
  • 已阅读并遵守 行为准则 与 贡献指南

Comment thread plugin/RemoteCI.Plugin/Services/PluginManagementService.cs
Comment thread shared/RemoteCI.Shared/Models/AuthModels.cs

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ef013ce39b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugin/RemoteCI.Plugin/Services/ScheduleChangeExecutor.cs
Comment thread plugin/RemoteCI.Plugin/Services/RemoteNotificationProvider.cs
Edge-HH and others added 3 commits September 28, 2026 15:28
Co-authored-by: codefactor-io[bot] <47775046+codefactor-io[bot]@users.noreply.github.com>
Co-authored-by: codefactor-io[bot] <47775046+codefactor-io[bot]@users.noreply.github.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0ac4bbe829

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +163 to +170
await DownloadJsonIfPresentAsync<ManagementPolicy>(
manifest.PolicySource.Value,
GetStaticString(managementType, "ManagementPolicyPath"),
settings,
clientId,
ct);
await DownloadJsonIfPresentAsync<ManagementCredentialConfig>(
manifest.CredentialSource.Value,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Preserve optional management manifest sources

When a valid management manifest omits its optional policy or credential source, accessing PolicySource.Value or CredentialSource.Value throws before DownloadJsonIfPresentAsync can handle the missing value. This makes joining any serverless/management deployment that does not publish both auxiliary files fail with an internal error; pass the optional source itself (or check it before accessing Value) so the helper can skip absent files.

Useful? React with 👍 / 👎.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: bb6edf3e22

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +215 to +216
/// <summary>把换课写入 ClassIsland 源课表(本周及以后每周生效),而不是只写到当天临时课表层。</summary>
public const string ScheduleChangePermanent = "schedule.change-permanent";

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Enforce the permanent schedule capability before forwarding

The new schedule.change-permanent capability is declared here but is never included in Current and Required always maps ChangeSchedule to the ordinary schedule.change capability. As a result, a client can send permanent: true to an older plugin that advertises only the existing schedule-change capability; the older model silently deserializes the unknown field as false and applies a temporary overlay, so the user receives a successful response while the requested permanent change is lost. Add capability negotiation/validation for permanent requests (and advertise it for supporting plugins) before forwarding.

Useful? React with 👍 / 👎.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2de162a063

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread server/RemoteCI.Server/Pages/BatchControl.cshtml.cs
Comment thread shared/RemoteCI.Shared/Protocol.cs
@Edge-HH
Edge-HH merged commit ef1927d into main Sep 28, 2026
6 checks passed
@Edge-HH
Edge-HH deleted the webui/newui branch September 28, 2026 11:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant