有关集市 pr 修改和包审核等相关事项的疑问

主要疑问在于以下几点:

集市规范变更是否应该提前通知?如果不能够通知,是不是应该有更合适的提示方式?

今天注意到我的几个插件被要求使用更小的图片,但是并没有任何提前通知,而且口气的话个人认为我之前在设计院的时候给下属发消息应该都是比这个要更客气一点的.

考虑到一些作者的 issue 可能有自己的要求(我自己是没什么格式,但显然不可能只有思源对 issue 格式有要求),这种莫名其妙的 issue 让人观感极差.

image

然后我回忆了一下,之前应该是没有这个图片大小的要求的.

然后去翻了一下集市模板的提交记录,发现这个要求是上个星期添加的,准确地说是 8 天之前.

image

我不知道其他人有没有接到通知,但是我是没有.

是否我之后在集市的包都有可能随时在没有任何通知的前提下被直接提这样的 issue?

提交记录以什么标准审核和修改

好,既然被建议修改了,那么我当然要去处理.

因为我平时有自己的生计要忙,所以最近可能没有时间维护自己的集市包,所以决定先暂时下架自己的所有插件,等有时间的时候拆分修改再上架.

然后我的提交记录被改成了"remove all plugins by leolee9086",好,现在我从自己主动暂时下架插件变成了被集市扫地出门了对吗???

image

然后我大致问了下 ds 这大概是个什么样的行为:

维护软件插件集市合并插件作者的提交记录时,把插件作者"没有时间维护,暂时下架插件"的提交记录改成"remove all plugins from ***<作者名>"是什么行为?

首先,用户的问题是:“维护软件插件集市合并插件作者的提交记录时,把插件作者'没有时间维护,暂时下架插件'的提交记录改成'remove all plugins from ***< 作者名 >'是什么行为?”

我需要理解这个场景。用户描述了一个情况:在维护软件插件集市时,当合并插件作者的提交记录时,有人将插件作者的提交信息从“没有时间维护,暂时下架插件”改为“remove all plugins from ***< 作者名 >”。用户问这是什么行为。

关键点是:提交记录被修改了。提交记录通常是在版本控制系统(如 Git)中记录的更改描述。修改提交记录可能涉及重写历史,这在某些情况下是可以接受的,但在其他情况下可能有问题。

现在,分析这种行为:

  1. 修改提交记录的含义​:在版本控制中,修改提交记录通常意味着使用像 git commit --amend​或 git rebase 这样的命令来更改提交消息。这可能会改变历史记录。

  2. 动机:原提交消息是“没有时间维护,暂时下架插件”,这表示作者由于时间问题暂时下架插件。修改后的消息是“remove all plugins from ***< 作者名 >”,这听起来更永久和全面,可能暗示作者移除了所有插件,而不仅仅是暂时下架。

  3. 影响

    • 对作者:修改提交消息可能歪曲了作者的意图。作者原本表示暂时下架,但修改后的消息可能被解释为永久移除。
    • 对用户:其他开发者或用户看到提交记录时,可能会误解作者的行为。
    • 对项目历史:修改历史记录可能破坏协作,如果其他人已经基于原提交工作。
  4. 伦理和最佳实践:在开源项目中,修改提交记录应该谨慎行事。通常,提交记录应该真实反映更改的原因。如果修改是为了澄清或标准化消息,那可能可接受,但这里修改似乎改变了含义。

  5. 可能的行为类型

    • 错误的行为:如果修改是为了恶意歪曲事实,那么这可能是不道德或甚至欺骗性的。
    • 疏忽的行为:如果修改是无心的,或者是为了简化消息,但忽略了原意,那么这是错误的。
    • 维护行为:如果修改是为了符合项目提交消息的规范,但应该保留原意。

用户问“是什么行为”,可能想知道这是否是适当的行为,或者它属于什么类别。

在软件工程中,修改提交历史通常不推荐,除非在个人分支或 before merging。在合并时,修改提交消息可能有时被接受,但应该尊重原作者的意图。

最后,回答用户:这种行为可能是不恰当的,因为它改变了作者的原意,可能导致误解。如果必须修改,应该确保消息准确反映更改的原因。

所以,我的回应应该解释这种行为可能带来的问题,并建议保持提交消息的真实性。

在软件开发和版本控制过程中,修改提交记录的行为需要谨慎对待。根据您的描述,将插件作者的提交记录从“没有时间维护,暂时下架插件”改为“remove all plugins from ***< 作者名 >”,这种行为可能涉及以下几个方面的考虑:

1. 行为性质分析

  • 歪曲作者意图:原提交消息明确表示作者是“暂时下架”插件,原因是没有时间维护。修改后的消息暗示作者“移除所有插件”,这听起来更永久和绝对,可能误解或歪曲了作者的原意。如果作者本意是暂时下架,未来可能恢复,那么这种修改可能导致其他贡献者或用户错误地认为作者已完全放弃维护。
  • 历史记录失真:版本控制系统(如 Git)的提交记录旨在真实记录项目历史。修改提交消息(尤其是通过重写历史的方式)可能破坏历史的一致性,影响跟踪和审计。如果其他开发者已经基于原提交进行工作,修改历史可能导致协作问题。
  • 伦理问题:在开源社区或协作项目中,尊重作者的提交消息是基本准则。未经作者同意修改其提交消息,可能被视为不尊重贡献者,甚至是一种欺骗行为。如果修改是出于恶意或为了隐藏事实,则更严重。

2. 可能的原因和场景

  • 标准化提交消息:有些项目为了维护提交历史的整洁性,会要求统一的提交消息格式。例如,将消息改为英文或使用特定模板。但即使如此,修改应该保留原意,而不是改变语义。
  • 误操作或疏忽:维护者可能无意中修改了消息,或者没有充分理解作者意图,导致错误更改。
  • 主动管理:如果插件集市有政策要求下架插件时使用特定术语(如“remove”),但最好在修改前与作者沟通,或在提交消息中注明原因。

3. 最佳实践建议

  • 保持透明:如果必须修改提交消息(例如在合并过程中),应尽量保留原意,或添加注释说明修改原因。理想情况下,修改提交历史应仅限于个人分支,在合并到主分支前进行。
  • 沟通与同意:在修改他人提交时,最好先与原作者沟通,获得同意。如果无法联系,应在提交消息中注明原话和修改理由。
  • 使用工具正确​:在 Git 中,修改历史可以使用 git commit --amend​或 git rebase,但应避免在公共分支上重写历史,以免影响其他开发者。如果已推送,可能需要强制推送,但这应谨慎使用。

4. 结论

这种行为通常​不推荐,因为它可能:

  • 误导社区成员对插件状态的理解。
  • 损害作者与维护者之间的信任。
  • 违反开源协作的规范。

如果您是维护者,建议恢复原提交消息,或添加补充说明而不是直接修改。如果您是观察到这一行为的第三方,可能需要向项目维护者反馈,以确保历史记录的准确性。

最终,维护软件插件集市时,尊重作者意图和保持历史真实是至关重要的。如果您有更多上下文或具体问题,我可以进一步分析!

修改之后的消息传达了什么样的错误信息?

好的,用户问的是修改后的消息传达了什么样的错误信息。首先得回顾之前的对话历史,确认上下文。之前用户提到维护者把插件的提交记录从“暂时下架”改成“移除所有插件”,这已经讨论过可能歪曲作者意图和历史失真。

现在用户进一步追问错误信息的具体影响,可能他们正在处理类似问题,或者是被修改方的支持者,想确认这种行为的严重性。深层需求可能是想收集证据去反驳维护者,或者维护自身权益。

得拆解新旧消息的差异。原消息强调“暂时”和“个人原因”,而新消息用了“remove”和“all”,显得永久且绝对。这可能误导社区认为作者彻底放弃,甚至影响作者声誉。用户可能担心这种误解会导致项目失去信任,或者作者被错误指责。

还要考虑用户身份,也许是插件作者本人,或者社区成员,想维护透明度。需要指出具体错误,比如语义扭曲、动机隐藏,以及可能引发的连锁反应,比如用户流失或社区信任下降。最后要强调维护者的不当行为,帮助用户理清争议点。

好的,这是一个非常关键的问题。修改后的提交消息 **“remove all plugins from * < 作者名 >” 向所有查看项目历史的人传达了多种严重错误的信息。

以下是逐条分析:

1. 扭曲了作者意图:从“暂停”变为“永久”

  • 原意(暂时下架) ​: “没有时间维护,暂时下架插件” 传达的是一种 暂停、可逆的 状态。作者可能在未来有时间时会恢复维护,或者只是暂时停止接受新用户,但对现有用户保持基本支持。
  • 错误信息(永久移除) ​: “remove all plugins from...” 在软件开发和版本控制的语境下,通常意味着 ​永久性的、不可逆的删除。它暗示作者与项目彻底割裂,所有相关代码和功能都将被清除。

后果:其他开发者或用户会认为该作者已经完全放弃了其所有插件,并且未来不会再有任何更新或支持。这可能会彻底断绝其他人与该作者合作或等待其回归的念头。

2. 掩盖了根本原因:从“个人原因”变为“不明原因”

  • 原意(说明原因) ​: “没有时间维护” 是一个 合理、常见且值得理解 的原因。开源社区的参与者大多是志愿者,时间有限是常态。这个原因能引发社区的同理心。

  • 错误信息(原因不明) ​: “remove all plugins from...” ​完全没有提及原因。这会让看到记录的人产生猜测:

    • “是作者和维护团队闹翻了吗?”
    • “是插件有严重的安全漏洞被强制下架了吗?”
    • “是作者对社区不满而愤然离开了吗?”

后果​:将一个良性的、个人时间管理的原因,变成了一个可能充满争议和负面猜测的谜团,​损害了作者的声誉

3. 模糊了操作性质:从“作者主动行为”变为“可能是维护者行为”

  • 原意(作者主动) ​: 原提交记录清晰地表明这是 插件作者本人 因为个人原因而采取的主动行为。

  • 错误信息(行为主体模糊) ​: “remove all plugins from < 作者名 >” 这句话的发起者可以是 ​任何人。它可能被理解为:

    • 作者自己移除了自己的插件。
    • 维护者/集市管理员 移除了该作者的所有插件。

后果:如果被理解为后者,这会让人觉得是维护者单方面对该作者采取了“清理”行动,这可能引发对维护者权力的质疑和社区的不安。原作者也失去了对其行为的所有权。

4. 夸大了操作范围:从“下架”到“移除”

  • 原意(下架) : “下架” 通常指从公开的插件列表或市场中移除,使其不再对新用户可见或可安装。但已有的代码提交历史、版本标签等可能仍然保留在代码库中。
  • 错误信息(移除) ​: “remove” 在 Git 语境下有很强的破坏性,可能被理解为 ​从代码库中彻底删除相关文件和代码

后果:这会让依赖这些插件历史版本的用户或开发者感到困惑和担忧,因为他们可能认为这些代码已经“消失”了。

总结对比表

方面 原始消息 (“暂时下架”) 修改后消息 (“remove all plugins from”) 传达的错误信息
时间性 暂时性,可能恢复 永久性,彻底结束 作者永久放弃了
原因 明确原因:个人时间不足 原因不明,引发负面猜测 作者可能与他人有冲突或插件有问题
行为主体 作者本人 主动行为 行为主体模糊(可能是管理员) 可能是维护者强制清理
操作性质 下架(从市场隐藏) 移除(可能彻底删除代码) 代码和历史可能被清除了

总而言之,这个修改将一个透明、合理、暂时的个人行为,扭曲成了一个不透明、充满疑点、永久性的管理行为。它不仅向社区传递了关于插件状态的错误信息,更严重的是,它可能对插件作者的声誉、动机和与社区的关系造成不必要的损害。 这是一种非常不专业且不负责任的行为。

应该怎么翻译才是正确的?

好的,用户现在问的是如何正确翻译“没有时间维护,暂时下架插件”这句话。之前的历史对话里已经详细讨论了错误修改提交记录带来的问题,现在用户可能是在实际操作中遇到了需要中译英的情况,或者想确认正确的表达方式。

用户可能是项目维护者,或者参与开源合作的开发者,想要确保沟通准确,避免误解。深层需求可能不只是翻译本身,而是希望遵循开源社区的规范,维护良好的协作关系,同时尊重原作者的意图。

首先得回顾之前的分析,原句的关键在于“暂时”和“下架”这两个词。之前的错误翻译把“暂时”变成了永久性的“remove”,所以正确翻译必须保留临时性的含义。可以考虑几个方案,比如用“temporarily unpublish”或者“suspend”,同时要保留原因部分,比如“due to time constraints”。

还要考虑用户的实际应用场景,比如是在提交信息、文档还是用户通知中使用。不同的场景可能需要不同的正式程度。比如提交信息可能更简洁,而给用户的公告可能需要更详细的说明。

另外,用户可能没有明说的需求是希望避免法律或伦理争议,确保翻译不会歪曲事实,保持透明度。所以推荐方案里不仅要给出正确的词汇,还要强调保留原句结构和原因的重要性,比如使用“Temporarily unpublish all plugins due to lack of maintenance time”这样的结构。

最后,需要提醒用户即使在标准化过程中也要尊重原作者意图,避免重蹈覆辙。可能还需要举例说明哪些词应该避免,比如“remove”或者“delete”,这些词太绝对了。同时给出多个选项,让用户根据具体上下文选择最合适的。

当然!正确的翻译需要​准确传达原句的核心信息:原因(没有时间维护)和行动(暂时下架) ,同时保持语言自然,符合英文技术文档和提交信息的惯例。

这里提供几个不同侧重点的版本,您可以根据上下文选择。

首选推荐(最平衡、最清晰)

"Temporarily unpublish all plugins due to lack of maintenance time"

  • Temporarily: 准确地翻译了“暂时”。
  • unpublish​: 在插件集市/应用商店的语境中,这是“下架”最地道的词,意指从公开列表中移除,但后台数据可能保留。比 remove​ 或 delete 更准确。
  • due to lack of maintenance time: 清晰、专业地说明了原因(没有时间维护)。

其他优秀备选方案

1. 更简洁的提交信息风格:
chore: temporarily unpublish plugins (maintainer unavailable)

  • chore: 表示日常维护性任务。
  • (maintainer unavailable) : 括号内简要说明原因,维护者无法继续。这种格式在提交记录中非常常见。

2. 更正式详细的版本:
Temporarily suspend all plugins as the author is unable to maintain them at the moment

  • suspend: 意为“暂停”,也非常贴切。
  • as... : 用一个完整的从句来解释原因,非常正式和清晰。

3. 最口语化、直接的版本:
Temporarily take down plugins - no time to maintain

  • take down: 意思是“撤下”,很直接。
  • - : 破折号连接行动和原因。
  • no time to maintain: 非常口语化,但意思明确。

总结与对比

版本 优点 适用场景
首选推荐 用词精准,信息完整,专业且清晰 适用于绝大多数情况,尤其是正式的提交记录。
简洁风格 符合传统提交信息规范,简洁明了 适合有严格提交信息规范的项目。
正式详细版 解释得非常详尽,毫无歧义 适合用于公告、文档或需要特别强调原因的提交。
口语化版本 非常直接,像自然对话 适合团队内部或比较随意的项目。

结论:

请务必使用上述任何一种能保留“暂时”和“原因”的翻译。 绝对应该避免使用原问题中那个具有误导性的 "remove all plugins from ...",因为它完全歪曲了事实。

在开源协作中,信息的透明度至关重要。正确的翻译不仅能准确记录历史,更是对插件作者劳动和意图的尊重。

我应该没有诱导性提问,我也问了其它几个 AI,换了一些问法,结果都差不多.

再然后就是现在集市包的审核标准是什么样的??

感觉到不妙之后,我去查看了一下其它集市包的审核记录,这是我简单看了几条

image

我没有看出被要求修改的关键词跟直接通过的有什么足以影响是否上架的区别,尤其是包名和关键词.

请问"建议修改"的标准是什么? 包名规范是什么样的? 是不是存在什么标准构词法或者准入词词典? 关键词规范又是什么样的? 什么样的关键词算是"冗余"什么样的不算? 一个 RAG 辅助插件有 AI 关键词,使用本地接口进行对话所以有本地关键词有什么问题吗?

如果以上提到的相关行为方式和行事标准之后都会保持的话,我之后还是不去集市没事找事给官方添麻烦了.

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    28442 引用 • 119754 回帖

相关帖子

优质回帖
  • Achuan-2 1 7 赞同

    集市有规范有人审核是好事

    不过对个人而言,集市规范突然更改,并没有一条公告,而是直接简单地说 xxx 不符合规范,应 xxx,没有说上下文,确实有命令的语气在,让人并不舒服。大多数插件开发者都是利用空闲时间免费给思源提供免费插件,理应得到尊重。

    图片压缩这个规范我能接受,给思源省点流量费,没什么好说的

    但 keywords 不让出现与名字、描述重复的单词,我就不太能接受,一是完全与 keywords 这个单词的意义不符合,关键词就是提取关键的相关词,现在变为了 alternative 词的意思。另一方面,从维护成本而言,我如果加了 keywords,以后要改名字和描述,都要看看 keywords 有没有重复的单词,这无疑增加了我的维护成本,而且我并不觉得限制这个会有多大的好处。所以我干脆把 keywords 全删除了

    另外如果以后上架插件都要进行 i18n 化(因为上次我的插件被建议了),我可能也不会再上传插件。进行 i18n、吸引更多国外用户其实是思源要干的事情,毕竟国外用户的付费意愿高,赚美刀来钱更快。但不是插件开发者的责任,插件开发者愿意 i18n 化,思源应该感谢而不应该成为强迫的事情。对我而言,写插件一直是为了自用顺道分享,其实没必要为了并不会给我赞赏的国外用户花时间 i18n 化(我没有国外收款方式,他们想给我赞赏也没办法)。obsidian 也没有 i18n 的要求

    Add Achuan-2/siyuan-plugin-copilot by Achuan-2 · Pull Request #1661 · siyuan-note/bazaar

    image.png

    思源集市有规范对思源长期发展是好事,但是规范如果会增加开发压力,那上架集市对我而言就不是一个顺道分享的事情了,还是自用来得省心,也不用收到用户的功能建议 issue 了。

    别想着拯救别人,先拯救好自己,是我这段时间不断提醒自己的一句话。

  • Achuan-2 3 3 赞同

    插件审核和本体贡献审核是两码事

    本体贡献严格,可以理解。可以比喻为,一个人在装修新房子,突然另一个人想要帮忙,虽然 ta 是好心,但不能瞎帮忙,如果 ta 真想帮忙,需要按照我的规则、按照已有的装修风格来。而对于贡献者而言,虽然审核费事,但是如果这是一个大项目,可以蹭个贡献者,以后加到简历去,或者这是一个常用的东西,这次改进完之后,以后体验就更好

    插件贡献,可以理解为,我给你的新房免费送家具,虽然称不上多好,但你还挑三拣四,那我就不送你了,这家具我自己用。我贡不贡献并不影响我使用,你有钱就自己买吧,或者等其他更有钱的人送你

    插件审核应该参考 vscode 和 obsidian 的插件审核

    关于闭源插件:obsidian 虽然主要是开源插件,但也可以上架闭源插件,不过也需要开发者在 Github 上传一个私有的开源版本,邀请审核人员查看

    我个人认为闭源付费的插件就自己分发,自己在其他平台开店宣传卖插件,而不是利用集市的客流卖插件(obsidian 很多付费插件在 b 站、小红书照样卖的很好)。闭源付费的插件在集市,一个是审核不公平问题,二是其实会影响到免费开源作者的观感,影响集市氛围,我开源了你闭源付费,我还不知道你有没有抄我代码;三是与思源本地功能免费完全开源的精神相违背

  • zuoez02 4 4 赞同

    @88250 你得好好 balance 一下社区氛围哦,现在给我感觉就像研发部门和测试部门在 battle 一样,不过至少大家还是一个公司赚钱的。思源这种可就是说流失就流失的,所以任何对社区有影响的提案都最好探讨一下,哪怕弄个什么 RFC 之类的也行,形式无所谓,前排已经很多大量贡献的开发同学了,还是好好弄弄吧。

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 其实我觉得不是如何改的问题,而是没有讨论也没有说明这么改是出于哪方面的考虑,目前的做法说实话不太像是开发者和社区的关系,有一点点同团队内上下级的那种味道了

    如果你指的是图片大小规范,issue 里有说明原因
    JeffreyChen
    其实主要是没太看懂关键词和名称,图片是能理解的
    ACai
    @ACai 这个在插件模板里补充说明了
    JeffreyChen
  • 其他回帖
  • 我再说得明白一点,这里没人对集市包要有规范有意见,我还可以再说得明白一点,我对没有提前说明本身也只想吐个槽没有什么特别大的意见,我还可以说的更明白一点我早就觉得集市的流量需要想办法控制,甚至觉得包大小本身就应该有一定控制,我更可以说得明白一点我直接认为插件不允许打包,只能引 npm 包,能够引用什么包需要用户允许都是一个好主意,而且我也确实做了 demo 还不错,说白了审核不但代表插件作者需要有更多的工作,也代表软件方本身对用户数据的重视.

    好了这事儿我没什么好说的了,别哪天搞得好像我是对弄规范有什么意见一样,重点从来就不是这个.

  • zxkmm 1 2 赞同 3 评论

    三个关键点:

    审核严格与否

    我认为审核严格是好事,我维护过的国际合作项目对审核非常严格,连注释大小写都有要求,但是这个要有规章条文,而不能人治。

    老插件怎么处理

    原则上来说应该只有新发插件遵守新出的规定,如果对已经存在的内容有要求应该有专人负责修改

    我最疑惑的点在于:既然做了严格审核,那么闭源插件怎么处理?

    正常的协作 review 应该对代码质量和代码安全性做严格审核,当然 metadata 这类东西严格审核也不是坏事。在这种前提下怎么处理闭源插件?难道只审核开源插件,不审核闭源插件吗?以及代码质量/安全性怎么算,是完全不在乎代码质量/安全性吗,如果是的话,审核存在的意义不大。设想一下一个简介和 metadata 都很精美的插件下载下来是一坨垃圾怎么办 ?

    参考火狐插件规范,如果代码有最小化和混淆就必须提供源码,不提供的一律拒绝。

    1 回复
    补充:必须提供源码给内部团队审核。我不是说必须向公众开放源码
    zxkmm
    这种社区环境下审核过于严格是不是一定是好事值得商榷
    queguaiya
    @zxkmm 源码也只能在第一次上架的时候提供给内部团队,那后期插件更新怎么办,目前的机制没法很好解决闭源插件的审核问题,我建议就不要上架闭源插件
    Achuan-2
  • leolee 1

    关键词这个我只贴个视频,可能会有人会觉得给中文描述和插件名现场做分词是个好主意吧,其它的我也不想说了
    反正我之后会直接从 GitHub 还有 pnpm 之类的包管理器拉取包,我有自己实现的扩展包管理,只是因为不想像其它软件那样搞出太多不上架集市的包的事情所以思源本身敲定插件方案之后就废弃了挨个往现在的插件集市迁移

    我是没办法按照这种清奇思路去写代码的,所以我自己一边凉快去,反正本来集市对我的作用除了有人想要我上架的时候方便分享之外没有任何好处,之前哪一次集市要求变动我都从来没有过什么意见,反正随缘,下架了反正对我也没坏处,本来耗的也是链滴的流量

    我之前的插件为了方便在任何地方都能直接改所以全都是故意做成不打包的源码还挺大的,还经常问我领导是不是还是打包算了耗别人流量太多其实不好

    昨天还是后来翻了下其他人的 pr 是被怎么回复的才爆了的,我自己那几个早就想回炉重造一下了,看现在的情况之后也不会再上架,之前在 q 群我回复别人的时候在那里自作聪明搞得好像比我更懂我的代码里面写了什么一样我也只是把他喷一通屏蔽了,结果给我看到这么个好活

  • 查看全部回帖