Protected roles and org integrity (no self-termination of the last lead; loop-safe attribution)
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- typescript
- Domain
- backend-api-design, security, testing
Research direction
The issue names no implementation files or tests; start by tracing agent termination, event attribution and wake rules, plus task reopening behavior, and inspect related issues #117, #145, #1334, #3817 and #3980. Add tests for protected lead/capability removal, self-authored comments not waking their author, and human-only reopening; done means all three rules are enforced and the attempted lead termination produces an Inbox note.
Written by the indexing model from the issue text.
Description
Part of #117 · Part of #145 · beat-Paperclip spec id E12
- Priority: p1
- Labels: type:feature, area:agents, area:security
- Relates to: #117 (#128), #145
- Scope: In Paperclip, the CEO "deleted itself" and took hiring rights with it (#1334). Agent comments are attributed to the user and re-trigger loops (#3817), and agent edits reopen done tasks (#3980). Muster rules:
- Lead roles are protected: they can't be terminated or paused by an agent, and the last holder of a capability can't be removed.
- Every event carries an actor from the Ledger, and wake rules ignore self-caused events.
- Only a human can reopen a done task.
- Acceptance:
- An agent's attempt to terminate the lead is refused with an Inbox note.
- A self-authored comment never wakes its author.
- Tests cover each rule.
Source: Paperclip issue/discussion research (docs, GitHub issues, live instance).
- Dominant language
- TypeScript
- Stars
- 3
- Forks
- 0
- Avg merge
- 17h 33m
- Merged PRs (30d)
- 163
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from musterhq/muster-code
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
musterhq/muster-code#866 ·
Maintainers usually reply within 1 day
-
p2 type:feature
Difficulty 5/5 Over a week Newbie friendliness 35/100
musterhq/muster-code#843 · 1 comment ·
Maintainers usually reply within 1 day
-
p1 type:feature
Difficulty 5/5 Over a week Newbie friendliness 25/100
musterhq/muster-code#840 ·
Maintainers usually reply within 1 day
-
p1 type:feature
Difficulty 5/5 Over a week Newbie friendliness 30/100
musterhq/muster-code#829 ·
Maintainers usually reply within 1 day
-
type:bug
Difficulty 3/5 1-2 days Newbie friendliness 70/100
musterhq/muster-code#815 ·
Maintainers usually reply within 1 day
All issues in musterhq/muster-code
Similar issues
-
[analytics-core] getQueryParams does not decode `+` as space and truncates values containing `=`Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
amplitude/Amplitude-TypeScript#2179 · 1 comment ·
Maintainers usually reply within 2 days
-
ci good first issue severity: low
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
TMHSDigital/GH-Arcade#111 ·
-
AsnIntegerConverter.toASN coerces strings with +value, rounding integers outside safe-integer rangeOpen
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
PeculiarVentures/asn1-schema#189 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 4 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100