    BSIP: 0028
    Title: Worker Proposal Improvements
    Authors: Bill Butler <https://github.com/wmbutler>
    Status: Draft
    Type: Protocol
    Created: 2017-11-11
    Discussion: https://github.com/bitshares/bitshares-core/issues/473
                https://github.com/bitshares/bitshares-core/issues/451
    Worker: TBD

# Abstract

Worker Proposals can be posted without a reference to a description of the proposal. It should be possible to update the reference regardless of the state of the worker proposal. There are also cases where proposed workers that fail to get voted in or get superceded by another worker continue to be visible. This isn't a huge problem at the moment, but it is an important housekeeping operation as we move forward.

# Motivation

Having clearly defined eligible proposed and active WP's is critical to proper governance.

# Rational

Either Committee or WP Issuer should have the abiity to retire a WP. I could make the argument that the WP Issuer should be able to retire their WP at any time whether it's active or not.

# Specifications

## Current Design and Implementation

Worker Proposals cannot be updated at all

## Proposed Changes

### Descriptive

* Allow description of the WP to updated.
* Allow WP Issuer ability to retire WP
* Possibly allow Committee to retire inactive WP

### Technical

* Add bool field `removed` to worker object.
* Add check to `db_maint.cpp` to skip workers in removed state.
* Don't allow votes to workers in removed state(`account_evaluator.cpp`).
* Create operation `worker_update`. Op will allow to change only the `name`, `url` and the `removed` object fields from the worker (track the change in operation). Can follow `committee_member_update` or similars.
* Implement new operation as a command to `cli_wallet` available for the worker issuer.
* Allow `committee` to use `worker_update` against any worker proposal. Need more discussion on how it can be done.

Requires hardfork.

# Discussion
```
https://github.com/bitshares/bitshares-core/issues/473
https://github.com/bitshares/bitshares-core/issues/451
```
# Summary for Shareholders

[to be added]

# Copyright

This document is placed in the public domain.
